package v1

import (
	"encoding/json"
	"strconv"
	"zimuzu_web_api/models"
	"zimuzu_web_api/pkg/e"
	"zimuzu_web_api/pkg/gredis"
)

func GetUserInfo(uid int) (user models.User) {

	redisKey := e.CACHE_USER + strconv.Itoa(uid)
	if !gredis.Exists(redisKey) {
		user = models.GetUserInfoByUid(uid)
		gredis.Set(redisKey, user, e.CACHE_EXPIRE_DAY)
	}else {
		data, err := gredis.Get(redisKey)
		if err == nil && len(data) > 0  {
			json.Unmarshal(data, &user)
		}
	}

	return
}